The manipulation of data in a data processing system is well known in the art and the large amounts of data that are available to the user of a modern state-of-the-art data processing system often become overwhelming in magnitude and complexity. Similarly, many consumer devices have interfaces requiring human interaction to control the device or a peripheral connected thereto. As a result of this increasing complexity, simplified interface methods and systems are needed between the user and the data processing system or device.
One example of a simplified system and method is the utilization of a graphic user interface (“GUI”). A GUI is an interface system by which a user interacts with system components, and/or system applications via a visible display having, for example, windows or view ports, icons, menus, pointing devices, etc. One of the many advantages of GUIs in the computer field is their ability to represent computer application programs, documents and data as graphical display elements or icons as opposed to text-based elements.
Menu driven software programs are a specific example of a GUI. Such software programs enable a user to choose from a list of items that can be accessed directly by pulling down different menus from the menu bar, rather than requiring the user to remember the name and syntax of a command. GUIs were developed so that novice users could more easily make a selection among available commands and, thus, operate computers. In the computer field, these menu driven software programs eventually lead to the development of a windowing environment in which the user may have multiple programs and files operable at one time with a selection among multiple commands. Each command appears in a window of the program data file being worked on. To effect selection within applications and switching between windows, a hand operated pointing device becomes a critical component of a computer system running windows based software applications. One example pointing device is a mouse.
Applications running in a windowed environment typically have a main menu bar with more specific commands being displayed in “pull down” menus stemming from specific portions of the main menu bar command headings. When the user wants to execute a command, the user must move the pointing device so that a cursor on the display points to the command on the desired menu heading. The command heading activates a pull down menu that displays a plurality of commands available for execution. In some instances, computer systems create hierarchies of menus (also referred to as “nesting”) leading to submenus to avoid excessively large menus or inappropriate menu chains. A command from the pull down menu may then be selected for execution. In accordance with conventional methods, only one command is executed at any given time since the pull down menu is typically limited to a single column of possible choices or objects. Movement amongst the menu bar and the pull down menus requires a great deal of movement of the pointing device (and thereby the cursor) to manipulate multiple windows or applications and their related commands. This movement is called “cursor commute.” This results in a time-consuming, less efficient and confusing user interface. Therefore, it is difficult for the young, the elderly, handicapped, or any novice user to traverse and coordinate the position of the pointing device and, thus, the cursor with which the execution is made.
One attempt to avoid a long horizontal list of menu options has resulted in “pop-up menus.” These menus have the advantage of bringing the menu to the cursor, rather than having to move the cursor to the menu. When a trigger event occurs, for example depressing the right button (known in the art as “right clicking”) on the pointing device (e.g., a mouse), a window is displayed next to the cursor position and the menu items to be related are listed. When the user chooses a menu item, the menu is removed and the action corresponding to the item is initiated. Pop-up menus, however, are limited to the number of commands they can contain and they often cover up part of the work area.
Pie menus enhance pop-up menus by allowing directional selection to choose menu items. A pie menu is similar to a pop-up menu, but the pie shaped menu items surround the cursor position in a circle. In their two-dimensional form, pie menus may be round menus. The menu items are positioned around a small inactive region in the center of the circle like slices of a pie, rather than in rows or columns as in conventional linear menus. In operation, the cursor is initially located in the center of the pie in a small inactive region. The active regions representing the menu items are therefore adjacent the cursor, but each in a different direction, and menu items are selected by clicking the mouse and then pointing in the direction of the menu item.
What is needed is an interface to provide users with a definable interface that minimizes cursor commute and does not clutter the work area.
The need for more flexible, user-friendly, and user definable interfaces is also driven by the fact that Wireless Wide Area Networks (WWAN) and Wireless Local Area Networks (WLAN) have created the opportunity for true mobile data access. Wireless geographic coverage for WLANs ranges from a few meters (Blue Tooth) up to hundreds of meters for Wireless Fidelity (WiFi) networks. Although wireless WANs such as GSM (Global System for Mobile Communications), GPRS (General Packet Radio Service), and CDMA (Code Division Multiple Access) match cell phone coverage, with data rates ranging from thousands of bits per second (Kbps) to millions of bits per second (Mbps), the wireless connections between server-based information and roaming devices can encounter some of the following problems:
Unreliable wireless connections
Unknown bandwidth availability
Coverage issues (roaming)
Wireless and device security
Limited device processing power
Limited device battery power
Limited device display capability
Limited user device interfaces and buttons
Differing device software (browsers)
Desktop computers connected via LANs move data into and out of databases as standard business processes. However, this access is usually tied to a wired network. Users who have no access to the wired network resort to paper copies of data or laptop computers for remote access. Services to deliver data via wireless networks have grown in popularity. In general, WiFi networks are the most widely used means to wirelessly “connect” laptops or desktop computers to corporate data. Some PDAs also support Blue Tooth and WiFi hardware. Although WiFi networks have been able to provide reasonable coverage and bandwidth, security issues are still being addressed.
Delivery of data via cell phone systems, CDMA, GSM, or GPRS networks (WANs) also involves many of the issues listed earlier. While data rates in the hundreds of Kbps range are promised, the reality often falls far short. Bandwidth limitations are still a real problem for wireless transmission of data. The instant invention directly addresses bandwidth, security, processing, and usability issues with the ZENU™ application interface and the use of ZML, a markup language of Applicant's own design, and that features data definitions to provide for efficient generation and control of Zenu™ screens from server-based tools and applications.